<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<!--普通函数与构造函数相比有四个明显的特点：-->
<!--1、不需要使用关键字来调用-->
<!--2、可以用return语句返回值  普通函数如果没有return值的话，返回undefined-->
<!--3、函数内部不建议使用this关键字  因为this指向的是window对象，
无意就会为window添加一些全局变量或者函数方法-->
<!--4、函数命名以驼峰方式，首字母小写-->

<script type="text/javascript">
    /*构造函数*/
    function Prince(name,age){
        this.name=name;
        this.age=age;
    }
//    给构造函数添加一个方法，用到了原型prototype
    Prince.prototype.fn=function(){
        console.log('我的名字叫'+this.name+'我的年龄'+this.age)
    }
//    构造函数的调用，必须使用new关键字
    var prince=new Prince('toy',25);
//    实例化的prince对象就具有构造函数的属性方法
    console.log(prince.name);
    console.log(prince.fn());

</script>
</body>
</html>